from colorama import Fore, Back, Style
print("{0:*^30}".format("欢迎使用BMR(基础代谢率)计算器"))
while True:

    b_e = input("是否退出程序（y/n）：")
    if b_e == 'y':
        print("{0:*^30}".format("退出计算器"))
        break
    elif b_e == 'n':

        while b_e == 'n':
            print("请依次输入以下信息，使用空格隔开")
            a = input("性别 年龄 身高(cm) 体重(kg)")
            input_split = a.split(" ")
            try:
                gender = input_split[0]
                age = eval(input_split[1])
                height = float(input_split[2])
                weight = float(input_split[3])
                if gender == "男":
                    bmr = 66.473 + 13.7516 * weight + 5.0033 * height - 6.755 * age
                elif gender == "女":
                    bmr = 655.0955 + 9.5634 * weight + 1.8496 * height - 4.6756 * age
                else:
                    bmr = -1
                if bmr != -1:
                    print('你的BMR值为：{:.2f}大卡'.format(bmr))
                    end = input("是否退出程序（y/n）")
                    if end == 'y':
                        print("{0:*^30}".format("退出计算器，感谢你的使用"))
                        break
                else:
                    print(Fore.RED + "性别格式填写错误！")
                    print(Style.RESET_ALL)

                    end = input("是否退出程序（y/n）")
                    if end == 'y':
                        print("{0:*^30}".format("退出计算器，感谢你的使用"))
                        break
            except ValueError:
                print(Fore.RED + "输入信息格式错误，请重新输入！")
                print(Style.RESET_ALL)
                # continue
            except IndexError:
                print(Fore.RED + "输入的信息不完整，请重新输入！")
                print(Style.RESET_ALL)
                # continue
            except:
                print(Fore.RED + "该版本计算器无法支持此操作，抱歉！")
                print(Style.RESET_ALL)
                # continue
        break

    else:
        print(Fore.RED + "继续程序请输入y，退出程序请输入n，请重新输入！")
        print(Style.RESET_ALL)
